Program and information processing apparatus

ABSTRACT

A non-transitory computer-readable medium has a program stored thereon and readable by a processor of an information processing apparatus configured to communicate with an image processing apparatus. The program, when executed by the processor, causes the information processing apparatus to perform: receiving an execution request to cause the image processing apparatus to perform the image processing, the execution request corresponding to a job; acquiring status information indicating a status of the image processing apparatus; and providing notification, during a notification time period, of error information based on the status information when the status information is acquired during the notification time period, which starts at a time when the execution request is received.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Japanese Patent Application No.2013-072371 filed on Mar. 29, 2013, the entire subject matter of whichis incorporated herein by reference.

TECHNICAL FIELD

This disclosure relates to a program and an information processingapparatus. More specifically, this disclosure relates to an errornotification technology of providing notification of error informationsuch as content of an error and a method of coping with the error.

BACKGROUND

In an image processing apparatus that performs an image processingoperation such as printing and scanning, a variety of errors occur, anddisable the image processing operation (to perform), such as paper jam,out-of-sheet, and colorant-deficiency, etc. There is a known technologyof sending error information to an information processing apparatuscommunicating with the image processing apparatus.

SUMMARY

However, the above technology has the following problem. That is, theerror information may be unnecessary for the information processingapparatus having received the error information. For example, the errorinformation regarding printing function in the image processingapparatus, such as colorant deficiency and paper jam, is not useful to auser of the information processing apparatus, which has not sent a printjob to the image processing apparatus. In this case, the user may berather uncomfortable due to the error notification.

In view of the above, this disclosure provides at least an errornotification technology capable of appropriately providing notificationof an error to each information processing apparatus communicating withan image processing apparatus.

A non-transitory computer-readable medium of this disclosure has aprogram stored thereon and readable by a processor of an informationprocessing apparatus configured to communicate with an image processingapparatus. The program, when executed by the processor, causes theinformation processing apparatus to perform: receiving an executionrequest to cause the image processing apparatus to perform the imageprocessing, the execution request being corresponding to a job;acquiring status information indicating a status of the image processingapparatus; and providing notification, during a notification timeperiod, of error information based on the status information when thestatus information is acquired during the notification time period,which starts at a time when the execution request is received.

An information processing apparatus of this disclosure includes acommunication unit that communicates with an image processing apparatusperforming image processing, and a control unit. The control unitexecutes: receiving an execution request to cause the image processingapparatus to perform the image processing, the execution request beingcorresponding to a job; acquiring status information indicating a statusof the image processing apparatus; and proving notification, during anotification time period, of error information based on the statusinformation when the status information is acquired during thenotification time period, which starts at a time when the executionrequest is received.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and additional features and characteristics of thisdisclosure will become more apparent from the following detaileddescriptions considered with the reference to the accompanying drawings,wherein:

FIG. 1 is a block diagram illustrating a configuration of an imageprocessing system according to an illustrative embodiment;

FIG. 2 is a block diagram illustrating a printing sequence of the imageprocessing system according to the illustrative embodiment;

FIG. 3 is a sequence diagram illustrating a sequence of an errornotification of an MFP of the image processing system according to theillustrative embodiment;

FIG. 4 is a flowchart illustrating a sequence of managing processing ofa status monitor according to the illustrative embodiment;

FIG. 5 is a flowchart illustrating a sequence of notification-permissionsetting processing (a first mode) of the status monitor according to theillustrative embodiment;

FIG. 6 is a flowchart illustrating a sequence of notification-permissionsetting processing (a second mode) of the status monitor according tothe illustrative embodiment; and

FIG. 7 is a flowchart illustrating a sequence of notification processingof the status monitor according to the illustrative embodiment.

DETAILED DESCRIPTION

Hereinafter, an illustrative embodiment embodying an apparatus of thisdisclosure will be specifically described with reference to theaccompanying drawings. In this illustrative embodiment, this disclosureis applied to an image processing system having a multi-functionalperipheral (MFP) and a personal computer (PC) having a device driver forthe MFP installed therein.

[Configuration of Image Processing System]

As shown in FIG. 1, an image processing system 100 of this illustrativeembodiment has MFPs 20 (an example of the printing apparatus), 21, 22and a PC 10 (an example of the information processing apparatus) thatcontrols the MFPs. In the image processing system 100, the PC 10 and theMFPs 20, 21 are connected to communicate with each other through a wiredLAN cable, and the PC 10 and the MFP 22 are connected to communicatewith each other through a USB cable.

In the meantime, the image processing apparatus and the informationprocessing apparatus configuring the image processing system 100 are notlimited to the shown apparatuses. Also, the connection between the PC 10and the MFP 20 and the like is not limited to the wired LAN cable andthe USB cable and may be made through a serial communication cable, aparallel communication cable and wireless communication such as wirelessLAN.

The PC 10 has a controller 30 (an example of the control unit) having aCPU 11 (an example of the control unit) that executes a variety ofprocessing, a ROM 12 that stores therein a startup processing program(BIOS), which is executed by the CPU 11 upon startup of the PC 10, andthe like, a RAM 13 that is used as a temporary storage area when the CPU11 executes the variety of processing and a hard disk drive (HDD) 14that stores therein a variety of programs and data.

Also, the PC 10 has an operation unit 15 such as a keyboard, a mouse andthe like, a display unit 16 such as a liquid crystal monitor and thelike, a USB interface 17 (an example of the communication unit) and anetwork interface 18 (an example of the communication unit), which areelectrically connected to the controller 30 and are controlled by thecontroller 30.

The PC 10 stores therein an operating system (OS), application programs(document processing software, drawing software, spreadsheet software,photograph data editing software and the like), device drivers forcontrolling the MFPs 20, 21, 22 and a status monitor (an example of theprogram) that monitors a status of each MFP 20. In the meantime, thevarious programs may be installed by using a recording medium having theprograms recorded therein, such as CD-ROM, or may be downloaded andinstalled from a server on a network.

The MFP 20 has a function of forming an image on a sheet and anelectrophotographic method, an inkjet method and the other general imageforming methods may be adopted as the image forming method. Also, theMFP may form a color image and a monochrome image or may form only amonochrome image. In addition, the MFP 20 has image reading, FAXtransmission and FAX reception functions. The configurations of the MFPs21, 22 are similarly to the MFP 20.

[Operations of PC]

Subsequently, operations of the PC 10, which are performed when the MFP20 is enabled to perform a printing operation in the image processingsystem 100 of this illustrative embodiment, are described with referenceto a block diagram of FIG. 2. In the meantime, a graphic engine 51 and aspooler 52 of FIG. 2 are provided as parts of the OS.

In FIG. 2, a device driver 40 is a printer driver for the MFP 20 andperforms data processing of image data, which is a printing target, andgeneration processing of print data based on the processed image data.The data processing includes synthesis of a watermark, a header, afooter and the like, magnification change such as enlargement andreduction, image rotation and aggregation such as 2in1, 4in1 and thelike.

Also, a status monitor 41 periodically acquires status information ofall the MFPs (in this illustrative embodiment, the MFPs 20, 21, 22) thatare connected to communicate with the PC 10 and displays the acquiredstatus information so that a user can see the same. Specifically, thestatus monitor 41 acquires, as the status information, operatingstatuses (under execution, standby status, or sleep status and the like)and a type of an error when the error occurs in the MFP. In thisillustrative embodiment, the status monitor 41 is provided from a devicemaker. However, the status monitor 41 may be provided as a part of theOS. An operating sequence of the status monitor 41 will be describedlater.

The graphic engine 51 is a module that controls the device driver 40.The graphic engine 51 receives a command from an application program 61and transmits the command to the device driver 40.

The spooler 52 is a module having functions of temporarily storing theprint data generated by the device driver 40 and sequentially outputtingthe print data to the designated MFP. In the specification, thedescription that ‘the device driver 40 transmits the print data to theMFP 20’ means that ‘the device driver 40 stores the print data in thespooler 52’ and does not mean that the print data is actuallytransmitted to the MFP 20 by the spooler 52.

When the PC 10 causes the MFP 20 to execute the printing, theapplication program 61 installed in the PC 10 first receives a printinginstruction from the user and outputs a printing start notice, as shownin FIG. 2. Then, the graphic engine 51 that is a part of the OS receivesthe printing start notice and starts to acquire image data, which is aprinting target, from the application program 61.

When the graphic engine 51 starts to acquire the image data, the graphicengine 51 issues a drawing command to the device driver 40. When thedevice driver 40 receives the drawing command, the device driver 40generates a bitmap image (a BMP image) based on the drawing command andgenerates print data of a PDL format based on the BMP image.

After generating the print data, the device driver 40 stores the printdata in the spooler 52. When the print data is stored in the spooler 52,the spooler 52 transmits the stored print data to the MFP 20. The MFP 20having received the print data performs a printing operation on thebasis of the print data.

Subsequently, operations of the PC 10, which are performed when theerror information of the MFP 20 is notified to the status monitor 41 inthe image processing system 100 of this illustrative embodiment, aredescribed with reference to a sequence diagram of FIG. 3. Meanwhile, inFIG. 3, the status monitor 41 is divided into a managing unit 41A thatmonitors a status of the MFP 20 and a notifying unit 41B that notifiesthe error information of the MFP 20. In the meantime, the managing unit41A and the notifying unit 41B may be separate modules or the samemodules.

In the image processing system 100 of this illustrative embodiment, whenproviding notification of the error information of the MFP 20 to the PC10, the managing unit 41A first acquires driver information, which isinformation of the device driver that is a monitoring target, from theOS 50 upon the startup of the managing unit 41A of the status monitor41. The driver information is stored in a setting storage area of the OS50, such as a registry. The driver information includes a type of thedriver and a type of the connection interface, for example. The driverinformation is stored in the setting storage area by an installer uponthe installation or by the device driver upon the startup of the devicedriver.

Also, when there is a printer driver, the managing unit 41A of thestatus monitor 41 is set to notice that a job is registered when the jobusing the printer driver, which is a monitoring target, has beenregistered, to the OS 50. The notification is hereinafter referred to as‘job registration notice’. Since the error notification is performed foreach device driver, the notification setting is made for each printerdriver. For example, when a printer driver for the MFP 20 is installedin the PC 10, the managing unit 41A is set to issue the notification ifa job using the printer driver for the MFP 20 has been registered. Whenthe notification setting is performed, the OS 50 outputs the jobregistration notice at the time that a printing job is stored in thespooler 52.

Meanwhile, for a scanner driver, the scanner driver secures a storagearea for storing read data and stores a reading situation in the storagearea. The managing unit 41A of the status monitor 41 acquires thereading situation from the storage area of the scanner driver anddetects starting and ending of a scanning job. In the meantime, the jobregistration notice may be output from the scanner driver to themanaging unit 41A of the status monitor 41 when a scanning job is input.The descriptions of the operations of the scanning job are omitted.

After the managing unit 41A of the status monitor 41 makes thenotification setting for the OS 50, the managing unit 41A periodicallyinquires of all devices, which are monitoring targets, about a status.That is, the managing unit 41A starts to monitor the status of the MFP20. In the meantime, although the status monitor 41 starts to monitorthe status of the MFP 20 by the managing unit 41A, the error informationis not notified by the notifying unit 41B until the managing unit 41Apermits the notification. The notification of the error information isnot permitted at an initial state.

After that, when a printing job using the device driver of a monitoringtarget is registered in the PC 10, the job registration notice is outputfrom the OS 50 to the status monitor 41. When the managing unit 41A ofthe status monitor 41 receives the job registration notice, the managingunit 41A permits the notifying unit 41B to provide notification of theerror information until a predetermined time period elapses after thenotification is received.

When the notification is permitted by the managing unit 41A, thenotifying unit 41B of the status monitor 41 provides notification of theerror information based on the latest status information of the MFP 20,which is acquired by the managing unit 41A. Whenever the managing unit41A acquires the status information of the MFP 20, the notifying unit41B provides notification of the latest error information. In themeantime, the aspect of providing notification of the error informationby the notifying unit 41B is a popup display on the display unit 16, forexample. In addition to this, a warning sound may be output. Also, forexample, a dialogue box may be blinked.

When the printing job is over, the OS 50 outputs a job ending notice tothe status monitor 41. In the meantime, the ending of the printing jobmeans that the print data of a final page is output from the spooler 52.For this reason, there is a time lug after the job ending notice isoutput until the printing of a final page is completed in the MFP 20.Meanwhile, for the scanning job, the ending means that reception of scandata is completed. Therefore, the reading in the MFP 20 has beencompleted upon detection of the job ending.

Therefore, when the job ending notice of the printing job is received,the managing unit 41A of the status monitor 41 prohibits a notice of thestatus after a predetermined time period elapses from the reception ofthe job ending notice, considering the time lug until the printing iscompleted. That is, a summed time period of a time period A (first timeperiod) after the job registration notice is received until the jobending notice is received and a time period B (second time period) afterthe job ending notice is received until a predetermined time periodelapses is a notification time period during which the notification ofthe error information is permitted. In the meantime, upon the endingdetection of the scanning job, the reading and reception of the readdata in the MFP 20 have been completed, and an error occurring after theending detection of the scanning job has a low relativity to a job thatis requested by the PC 10. For this reason, the time period B is set tobe 0 second and only the time period B becomes the notification timeperiod. When the notification is prohibited, the notifying unit 41B doesnot provide notification of the error information.

That is, when an error occurs in the image processing apparatus that isa monitoring target after the PC 10 registers a job, the error highlyinfluences the job. For this reason, the error information has a highutility value for the user who uses the PC 10. On the other hand, theinformation of an error, which occurs while the PC 10 is not registeringa job, does not have always a high utility value for the user who usesthe PC 10. For this reason, the notifying unit 41B of the status monitor41 provides notification of the error information, which is obtainedfrom the MFP 20 during the notification time period corresponding to thetime period for which the MFP 20 is executing a job after the job isregistered, and does not provide notification of the error informationduring the other time period even when an error occurs in the MFP 20.

In the meantime, the managing unit 41A of the status monitor 41periodically acquires the status of the image processing apparatus thatis a monitoring target, regardless of whether a job is registered.Thereby, contrary to notification of the error information by thenotifying unit 41B, it is possible to always display the latest statusof the image processing apparatus in accordance with a request from theuser.

[Operations of Status Monitor]

[Managing Processing]

Subsequently, managing processing that is executed by the managing unit41A of the status monitor 41 so as to realize the error notifyingsequence is described with reference to a flowchart of FIG. 4. Themanaging processing is executed by the CPU 11 when the status monitor 41starts up.

In the managing processing, the CPU first initializes and activates amonitoring timer for periodically inquiring a status of a device that isa monitoring target (S101). Then, the CPU acquires the driverinformation of the device driver from the setting storage area of the OS50 (S102).

Then, based on the driver information acquired in S102, the CPUdetermines whether the connection interface is one-to-one connection(S103). In this illustrative embodiment, the one-to-one connectioncorresponds to the USB interface 17. In addition to this, a one-to-oneconnection through a serial cable or dedicated line is also included.When the connection interface is not one-to-one connection (S103: NO),for example, when the connection interface is network connection such asEthernet (registered trademark), the CPU sets the status monitor 41 tooutput the job registration notice to the OS 50 when a job using thedevice driver becoming a monitoring target is registered (S111).

The CPU repeats the processing of S103 and S111 and performs theprocessing for all the device drivers that are stored in the driverinformation acquired in S102. For example, when the printer driver ofthe MFP 20 and the printer driver of the MFP 22 are monitoring targets,since the MFP 20 is connected by the network interface 18 and the MFP 22is connected by the USB interface 17, the job registration notice isperformed for the status monitor 41 upon the registration of the jobusing the printer driver of the MFP 20.

After the notification setting for the respective device drivers, theCPU determines whether the driver information is updated (S104). Thatis, after starting the managing processing, the CPU determines whetherthe device driver becoming a monitoring target is added or deleted. Whenthe driver information is updated (S104: YES), the CPU proceeds to S102and again performs the notification setting.

When the driver information is not updated (S104: NO), the CPU executesnotification-permission setting processing for settingnotification-permission of the error information (S105). Here, thenotification-permission setting processing of S105 is described withreference to a flowchart of FIG. 5.

In the notification-permission setting processing, the CPU firstdetermines whether there is the job registration notice (S151). Whenthere is the job registration notice (S151: YES), the CPU permits thenotification of the error information (S161). Thereby, the notificationof the error information by the notifying unit 41B is permitted. Theinformation indicating whether there is the notification-permission isstored in a storage means that can be commonly used by the managing unit41A and the notifying unit 41B, for example, a registry or file. Whenthe notification of the error information is permitted, the notifyingunit 41B provides notification of the error information, based on thestatus information of the device. The processing of the notifying unit41B will be described later. On the other hand, when there is no jobregistration notice (S151: NO), the notification of the errorinformation is not permitted.

After S161 or when there is no job registration notice (S151: NO), theCPU determines whether there is the job ending notice (S152). When thereis the job ending notice (S152: YES), the CPU acquires a type of the jobthat is a notice target (S171). Then, based on the type of the job, theCPU determines ending time of the notification time period (S172). Thatis, the CPU determines the time period B of FIG. 3. Regarding a methodof determining the ending time of the notification time period in S172,when a job is the printing job, the CPU sets time that is prescribedconsidering the time lug until the printing is completed, for example.On the other hand, when a job is the scanning job, the CPU sets the timeB to be zero (0) because the scan is completed at the time that thereception of the read data is completed. After S172, the CPU initializesand activates a notification timer that is a timer for notification timeperiod (S173).

After S173 or when there is no job ending notice (S152: NO), the CPUdetermines whether the notification time period has elapsed (S153).Specifically, in S153, the CPU determines that the time period B haselapsed i.e., the notification time period has elapsed when thenotification timer activated in S173 reaches the ending time or longerdetermined in S172. On the other hand, when the notification timeractivated in S173 does not exceed the ending time or the notificationtime period is not set, i.e., while the notification of the errorinformation is prohibited, the CPU determines in S153 that thenotification time period has not elapsed.

When the notification time period has elapsed (S153: YES), the CPUprohibits the notification of the error information (S181). Then, theCPU stops the notification timer (S182). After S182 or when thenotification time period has not elapsed (S153: NO), the CPU ends thenotification-permission setting processing. In the meantime, thedescriptions of the notification-permission setting processing relate tothe notification-permission setting of the printer driver. For thescanner driver, the CPU determines in S151 whether the start of thescanning job is detected and determines in S152 whether the ending ofthe scanning job is detected.

Meanwhile, in the notification-permission setting processing (a firstmode) shown in FIG. 5, when the job ending notice is received, the CPUdetermines the notification time period by determining the time periodB. That is, in FIG. 3, the sum of the time period A and the time periodB is the notification time period. However, the notification time periodmay be determined when the job registration notice is received, i.e.,when the notification of the error information is permitted. Thenotification-permission setting processing (a second mode) of this caseis shown in FIG. 6.

In the notification-permission setting processing shown in FIG. 6, whenthere is the job registration notice (S151: YES), the CPU acquiressetting information of the device driver that is used by thecorresponding job (S271) and determines an ending time of thenotification time period on the basis of the setting information of thedevice driver (S272). Regarding a method of determining the ending timeof the notification time period in S272, the notification time period isset to be longer in proportion to the number of sheets to be printed“n”. Also, for a color printing, the notification time period is set tobe longer than a monochrome printing. Alternatively, when the number ofsheets to be color-printed is a threshold or larger, the CPU adds timeof position deviation correction to the notification time period. Also,for a duplex printing, the notification time period is set to be longerthan one-side printing. That is, in S272, the CPU determines thenotification time period, based on an attribute of the job obtained fromthe setting information of the device driver.

After S272, the CPU permits the notification of the error information(S161) and initializes and activates the notification timer (S173).After S173 or when there is no job registration notice (S151: NO), theCPU determines whether the notification time period has elapsed (S153).When the notification time period has elapsed (S153: YES), the CPUprohibits the notification of the error information (S181) and stops thenotification timer (S182).

That is, in the notification-permission setting processing of the secondmode shown in FIG. 6, the notification time period is set irrespectiveof the job ending notice. For this reason, the output of the job endingnotice is not required and the processing becomes simpler than thenotification-permission setting processing of the first mode shown inFIG. 5. On the other hand, in the second mode, since the ending time ofthe notification time period is determined irrespective of the jobending notice, there is a risk that the notification time period willexpire before the job is over. For this reason, the first mode can morecertainly secure the notification time period until the job iscompleted.

Meanwhile, in the first mode, the notification time period is varieddepending on the type of the job. However, the notification time periodmay be fixed. Also, the time period B may not be included in thenotification time period and the notification time period may expirewhen the job ending notice is received, i.e., only the time period A maybe set as the notification time period. Also, like the second mode, thetime period B may be varied depending on the setting of the devicedriver. Also, in the second mode, the notification time period is varieddepending on the setting of the device driver. However, the notificationtime period may be fixed. Also, like the first mode, the notificationtime period may be varied depending on the type of the job.

Returning to FIG. 4, after the notification-permission settingprocessing in S105, the CPU determines whether there is an ending noticeof ending the status monitor 41 (S106). When there is the ending notice(S106: YES), the CPU ends the managing processing.

When there is no ending notice (S106: NO), the CPU determines whether aninquiry interval of the status of the device being a monitoring targethas elapsed (S107). Specifically, in S107, when the monitoring timeractivated in S101 reaches predetermined time or longer, the CPUdetermines that the inquiry interval has elapsed. When the inquiryinterval has not elapsed (S107: NO), the CPU proceeds to S104 andrepeats the determination after S104.

When the inquiry interval has elapsed (S107: YES), the CPU resets themonitoring timer to an initial value and reactivates the same (S121).Also, the CPU inquires of the device being a monitoring target about astatus thereof and acquires the status information of each device(S122). After that, the CPU outputs a notification notice to thenotifying unit 41B of the status monitor 41 (S123). After S123, the CPUproceeds to S104 and waits for the inquiry interval to elapse. Wheneverthe inquiry interval has elapsed, the CPU repeats the processing afterS121.

[Notification Processing]

Subsequently, notification processing that is executed by the notifyingunit 41B of the status monitor 41 so as to implement the error notifyingsequence is described with reference to a flowchart of FIG. 7. Thenotification processing is executed by the CPU 11 when the notificationnotice (refer to S123 in the managing processing of FIG. 4) is outputfrom the managing unit 41A.

In the notification processing, the CPU acquires the latest statusinformation acquired by the managing unit 41A (S201). Then, the CPUdetermines whether the error information included in the statusinformation includes an error to be provided in a notification (S202).For example, in S202, the status information irrelevant to the error,such as standby status, slip status and the like, is not included twinthe error to be provided in a notification. Also, for example, when theprinter driver of the MFP 20 is a monitoring target, the errorinformation relating to the scanner and FAX communication has a lowutility value even though the error information is the error informationof the MFP 20. That is, the CPU determines that the error informationirrelevant to the job for which the job registration notice is issued isnot a target to be provided in a notification. Also, when the printerdrivers of the MFP 20 and the MFP 22 are monitoring targets and aprinting job is issued for the MFP 20, the error information of the MFP22 has a low utility value. That is, when a plurality of devices ismonitoring targets, the CPU determines that the error information of adevice, except for a device that is used by a job for which the jobregistration notice is issued, is not a target to be provided in anotification. When it is determined that there is no error to beprovided in a notification (S202: NO), the CPU ends the notificationprocessing without providing a notification of the error information.

When it is determined that there is an error to be provided in anotification (S202: YES), the CPU determines whether the connectioninterface to the device in which the error to be provided in anotification occurs is one-to-one connection (S203). When the connectioninterface is one-to-one connection (S203: YES), there is a highpossibility that the occurring error is a job input from another PC 10.For this reason, the CPU provides a notification of the errorinformation, irrespective of whether there is thenotification-permission (S205).

On the other hand, when the connection interface is not one-to-oneconnection (S203: NO), the CPU determines whether the error notificationis permitted in the managing unit 41A (S204). Specifically, the CPUreads out the information indicating whether there is thenotification-permission, which is stored in S161 or S181 of the managingprocessing of the managing unit 41A. When the notification is permitted(S204: YES), the CPU provides a notification of the error information(S205) and ends the notification processing. On the other hand, when thenotification is not permitted (S204: NO), the CPU ends the notificationprocessing without providing notification of the error information.

As specifically described above, there is a high possibility that anerror, which occurs in the device being a monitoring target within thepredetermined time period after the PC 10 receives the execution requestof the job, is an error relating to the job requested by the PC 10. Onthe other hand, there is a high possibility that an error, which occursin the device being a monitoring target for a time period other than thepredetermined time period, is an error irrelevant to the PC 10. For thisreason, the status monitor 41 of this illustrative embodiment provides anotification of the error information if the error occurs in thepredetermined time period (in the notification time period). Thereby, itis possible to expect the error notification to have a high utilityvalue.

In the meantime, the above illustrative embodiment is just exemplary andis not construed to limit this disclosure. Accordingly, this disclosurecan be variously improved and modified without departing from the scopeof this disclosure. For example, regarding the MFP, any device having animage processing function is possible and a printer, a scanner, a copierand a FAX apparatus can be also applied. Also, regarding the PC, anyapparatus that inputs an image processing job to the image processingapparatus is possible and a smart phone and a PDA can be also applied.

Also, in the above illustrative embodiment, the managing unit 41A of thestatus monitor 41 periodically acquires the status information of theMFP 20, irrespective of the notification time period. However, themanaging unit 41A may acquire the status information only during thenotification time period.

Also, in the above illustrative embodiment, the error informationirrelevant to the type of the job for which the job registration noticeis issued and the error information of the device other than the devicethat is used by the job for which the job registration notice is issuedare not determined as an error that is to be provided in a notificationin S202 and thus are not provided in a notification, but it may beprovided in a notification. In this case, the error information that isdetermined as an error not to be provided in a notification has a lowerutility value, compared to the error information that is determined asan error to be provided in a notification. Therefore, the errorinformation that is determined as an error not to be provided in anotification may be set to have a lower degree for providing anotification, compared to the error information that is determined as anerror to be provided in a notification, and may be provided in anotification in distinction from the error to be provided in anotification. The level of the degree of the notification may beimplemented by whether or not a popup display, whether or not a blinkdisplay, whether or not a warning sound and a size of a message box.

Also, in the above illustrative embodiment, the notifying unit 41B ofthe status monitor 41 is enabled to notification of the error. However,this disclosure is not limited thereto. For example, a mail may betransmitted. Also, the other applications having a display function (forexample, a browser, a status monitor that is managed by the OS, and thelike) may display the error, for example.

Also, the processing disclosed in the above illustrative embodiment maybe executed by hardware such as a single CPU, a plurality of CPUs, anASIC and the like or a combination thereof. Also, the processingdisclosed in the above illustrative embodiment may be implemented by avariety of aspects such as a recording medium having a program forexecuting the processing recorded therein, a method and the like.

What is claimed is:
 1. A non-transitory computer-readable medium havinginstructions readable by a processor of an information processing deviceincluding a connection interface configured to perform communicationwith an image processing device, wherein an operating system, anapplication, and a plurality of device drivers are installed in theinformation processing device, and the application and the plurality ofdevice drivers as part of a printing system conform to a specificationof the operating system, the plurality of device drivers configured togenerate job data in response to the application receiving a useroperation that instructs to execute an image processing job, the jobdata is data for causing a plurality of the image processing devicescorresponding to the plurality of the device drivers to execute theimage processing job, the plurality of device drivers configured to thusregister the generated job data to the operating system, and theoperating system transmits the registered job data to the imageprocessing device, and the instructions, when executed by the processor,causing the information processing device to function as a statusmonitor and to perform: acquiring monitoring target device driverinformation stored in the information processing device, the monitoringtarget device driver information being information indicating whichdevice driver among the plurality of device drivers installed in theinformation processing device is a monitoring target device of thestatus monitor; requesting the operating system to output a jobregistration notice, in response to a registration of job data beingreceived from the device driver indicated by the acquired monitoringtarget device driver information, wherein the job data is data generatedby the device driver in response to the application receiving the useroperation instructing to execute the image processing job; receiving,from the monitoring target device corresponding to the monitoring targetdevice driver via the connection interface, periodically, regardless ofwhether job data associated with the monitoring target device isregistered, status information indicating a status of the monitoringtarget device, wherein the status monitor is operated in one of anotification mode and a non-notification mode, and the status monitor isin the non-notification mode when requesting the operating system tooutput the job registration notice; switching, in response to receivingthe job registration notice of the monitoring target device output fromthe operating system in a state of the non-notification mode, into thenotification mode; determining, when the status information receivedfrom the monitoring target device includes error information indicatingthat the monitoring target device is in an error state, whether thestatus monitor is in the notification mode or the non-notification mode;executing, in response to determining that the status monitor is in thenotification mode, a notification process notifying an error indicatedby error information; preventing, in response to determining that thestatus monitor is in the non-notification mode, the notificationprocess; and switching, when a predetermined time elapses from switchinginto the notification mode, into the non-notification mode, wherein thenon-notification mode corresponds to a first period in which no job isregistered with the monitoring target device and a second period afterthe predetermined time elapses from switching into the notification modeafter receiving the job registration notice.
 2. A non-transitorycomputer-readable medium according to claim 1, wherein the instructionscause the information processing device to perform: acquiring, in theacquiring of the target device driver information, device driverinformation for a plurality of device drivers; requesting, in therequesting the operating system, each of the plurality of device driversto output the job registration notice, wherein the operating system isconfigured to output the job registration notice including informationindicating which device driver registered the job data; switching, inresponse to acquiring the job registration notice in the state of thenon-notification mode, into the notification mode for a target devicedriver, wherein the target device driver is the device driver indicatingthe job registration notice and the plurality of device driversrespectively correspond to a different image processing apparatus; andexecuting, in a state of the notification mode, the notification processonly in a case where the status information received from the monitoringtarget device corresponding to the target device driver includes theerror information, among a case where the status information receivedfrom the monitoring target device corresponding to the target devicedriver includes the error information and a case where the statusinformation received from the monitoring target device corresponding tothe device driver different from the target device driver includes theerror information.
 3. A non-transitory computer-readable mediumaccording to claim 2, wherein the instructions cause the informationprocessing device to perform: notifying, in the state of thenotification mode, in a case where the status information received fromthe monitoring target device corresponding to the target device driverincludes the error information, the error indicated in the errorinformation by a first aspect; and notifying, in the state of thenotification mode, in a case where the status information received fromthe monitoring target device corresponding to the device driverdifferent from the target device driver includes the error information,the error indicated in the error information by a second aspect.
 4. Anon-transitory computer-readable medium according to claim 3, wherein avisibility of the first aspect is higher than a visibility of the secondaspect.
 5. A non-transitory computer-readable medium according to claim1, wherein the instructions cause the information processing device toperform: acquiring, in the acquiring of the target device driverinformation, device driver information for a plurality of devicedrivers; requesting, in the requesting the operating system, each of theplurality of device drivers to output the job registration notice,wherein the operating system is configured to output the jobregistration notice including information indicating which device driverregistered the job data, switching, in response to acquiring the jobregistration notice in the state of the non-notification mode, into thenotification mode for a target device driver, wherein the target devicedriver is the device driver indicating the job registration notice andthe plurality of device drivers each respectively correspond to adifferent image processing job; and executing, in the state of thenotification mode, the notification process only in a case where thestatus information includes the error information regarding a targetimage processing job, among a case where the status information receivedfrom the monitoring target device corresponding to the target devicedriver includes the error information regarding the target imageprocessing job and a case where the status information received from themonitoring target device corresponding to the target device driverincludes the error information regarding the image processing jobdifferent from the target image processing job.
 6. A non-transitorycomputer-readable medium according to claim 5, wherein the instructionscause the information processing device to perform: notifying, in thestate of the notification mode, in a case where the status informationreceived from the monitoring target device corresponding to the targetdevice driver includes the error information regarding the target imageprocessing job, the error indicated in the error information by a firstaspect; and notifying, in the state of the notification mode, in a casewhere the status information received from the monitoring target devicecorresponding to the target device driver includes the error informationregarding the image processing job different from the target imageprocessing job, the error indicated in the error information by a secondaspect.
 7. A non-transitory computer-readable medium according to claim5, wherein the image processing job corresponding to the target devicedriver includes at least one of printing, scanning and transmitting offacsimile.
 8. A non-transitory computer-readable medium according toclaim 1, wherein the operating system outputs the job registrationnotice including information indicating which of a plurality of types ofthe image processing job registers the job data, and wherein theinstructions cause the information processing device to perform:switching, in response to receiving job registration notice output fromthe operating system in the state of the non-notification mode, into thenotification mode regarding a type of the image processing job, the typeof the image processing job being the type of the image processing jobindicated by the job registration notice; and executing, in the state ofthe notification mode, the notification process only in a case where thestatus information includes the error information regarding the type ofthe image processing job, among a case where the status informationreceived from the monitoring target device includes the errorinformation regarding a type of the image processing job and a casewhere the status information received from the monitoring target deviceincludes the error information regarding the type of the imageprocessing job different from the type of the image processing job.
 9. Anon-transitory computer-readable medium according to claim 1, whereinthe instructions cause the information processing device to perform:controlling, in response to receiving the job registration notice outputfrom the operating system in the state of the non-notification mode,memory included in the information processing device to storenotification mode information indicating that a mode is the notificationmode; and executing the notification process only in a case where thenotification mode is stored in the memory, among a case where thenotification mode is stored in the memory and a case where thenotification mode is not stored in the memory.
 10. A non-transitorycomputer-readable medium according to claim 9, wherein the instructionsinclude: a first instruction causing, in response to receiving the jobregistration notice output from the operating system, the processor tofunction as a manager that controls the memory included in theinformation processing device to store notification mode informationindicating that a mode is the notification mode; and a secondinstruction causing the processor to function as a notifier thatexecutes the notification process only in a case where the notificationmode is stored in the memory, among a case where the notification modeis stored in the memory and a case where the notification mode is notstored in the memory.
 11. A non-transitory computer-readable mediumaccording to claim 1, wherein the state is the non-notification modefrom starting by the processor until acquiring the job registrationnotice output from the operating system.
 12. A non-transitorycomputer-readable medium according to claim 1, wherein the instructionscause the information processing device to perform: switching, inresponse to acquiring termination notification information in the stateof the notification mode, into the non-notification mode, wherein theoperating system is configured to output the termination notificationinformation in response to termination of receiving the registration ofjob data corresponding to the job registration notice.
 13. Anon-transitory computer-readable medium according to claim 12, wherein apredetermined time is set in consideration of a time interval from thetermination of receiving the registration of job data until terminationof the image processing job in the monitoring target device, and whereinthe instructions cause the information processing device to perform:acquiring, in a state of the notification mode, termination notificationinformation output from the operating system; and switching, when thepredetermined time is elapsed from the acquiring the terminationnotification information, into the non-notification mode.
 14. Anon-transitory computer-readable medium according to claim 13, whereinthe instructions cause the information processing device to perform:executing a determination process to determine the predetermined timebased on a type of the image processing job.
 15. A non-transitorycomputer-readable medium according to claim 14, wherein thedetermination process includes at least one of: a process in which thepredetermined time in a case where a process condition of the imageprocessing job is color printing is set to be longer than thepredetermined time in a case where the process condition is monochromeprinting; a process in which the predetermined time in a case where aprocess condition is at least a predetermined number of sheets to beprinted is set to be longer than the predetermined time in a case wherethe process condition is less than the predetermined number of sheets tobe printed; and a process in which the predetermined time in a casewhere a process condition is double-sided printing is set to be longerthan the predetermined time in a case where the process condition issingle-sided printing.
 16. A non-transitory computer-readable mediumaccording to claim 13, wherein the instructions cause the informationprocessing device to perform: executing a determination process in whichthe predetermined time in a case where an image processing job isprinting is set to be longer than the predetermined time in a case wherethe image processing job is scanning.
 17. A non-transitorycomputer-readable medium according to claim 13, wherein the notificationprocess includes at least one of: a process to display the errorincluded in the error information to a display of the informationprocessing device; a process to cause an application having anotification function to provide a notification of the error included inthe error information; and a process to cause the connection interfaceto transmit a message included in the error information.
 18. Anon-transitory computer-readable medium according to claim 13, whereinthe connection interface is a one-to-one connection interface, and theinstructions cause the information processing device to perform:receiving periodically status information indicating a status of themonitoring target device from the monitoring target device, via theconnection interface of the information processing device, andexecuting, when the status information received from the monitoringtarget device via the connection interface is the error informationindicating that the monitoring target device is in the error state, thenotification process in case of both the notification mode and thenon-notification mode.